package com.mysoft.gfyx.clue.mip;

import com.mingyuanyun.sdk.mip.annotation.MipAuth;
import com.mingyuanyun.sdk.mip.client.IHttpApi;
import com.mingyuanyun.sdk.mip.enm.MipAuthType;
import com.mysoft.gfyx.clue.mip.dto.GenerateQrCodeRequestDto;
import com.mysoft.gfyx.clue.mip.dto.SendPushOrderRequestDto;
import com.mysoft.gfyx.clue.mip.dto.YcgApiBaseRespondDto;
import feign.Headers;
import feign.Param;
import feign.RequestLine;

@MipAuth(MipAuthType.OAUTH2)
public interface OpSubscriptionService extends IHttpApi {
    @RequestLine("POST /api/wechat/ycg/generate-qr-code")
    @Headers("Content-Type: application/json")
    YcgApiBaseRespondDto generateQrCode(GenerateQrCodeRequestDto dto);

    @RequestLine("GET /api/wechat/ycg/get-follow-status?scene_id={scene_id}")
    @Headers("Content-Type: application/json")
    YcgApiBaseRespondDto getFollowStatus(@Param("scene_id") String scene_id);

    @RequestLine("GET /api/wechat/ycg/get-follow-by-openid?openid={openid}")
    @Headers("Content-Type: application/json")
    YcgApiBaseRespondDto getFollowByOpenid(@Param("openid") String openid);

    @RequestLine("POST /v1/message/send-push-order")
    @Headers("Content-Type: application/json")
    YcgApiBaseRespondDto sendPushOrder(SendPushOrderRequestDto dto);
}